/**
 *  @file: config.h
 *  @author: nwz
 *  @brief: 
 *  @date: 2024��7��25��
 * 
 */

#ifndef CODE_CONFIG_CONFIG_H_
#define CODE_CONFIG_CONFIG_H_

#define VERSION			1
#define VERSION_SUB		1

#define UPDATE_HOMEPAGE_TIMEVAL		1000

#define KEY_LONG_CLICK_TIME				3000
#define MIN_STACK_SIZE					256
#define PAGE_STACK_MAX_SIZE				100

#define DEFAULT_BRIGHTNESS				50
#define LCD_DARK_BRIGHTNESS				10
#define LCD_DARK_TIMEOUT				(10*1000)
#define LCD_SHUTDOWN_TIMEOUT			(15*1000)

#define MAIN_TASK_STACK_SIZE					512
#define MAIN_TASK_PRIORITY					2
#define CONSOLE_WRITE_TASK_STACK_SIZE			MIN_STACK_SIZE
#define CONSOLE_WRITE_TASK_PRIORITY			1
#define CONSOLE_READ_TASK_STACK_SIZE			MIN_STACK_SIZE
#define CONSOLE_READ_TASK_PRIORITY			2
#define DATA_TASK_STACK_SIZE					MIN_STACK_SIZE
#define DATA_TASK_PRIORITY					2
#define DEBUG_TASK_STACK_SIZE					512
#define DEBUG_TASK_PRIORITY					2
#define LED_TASK_STACK_SIZE					MIN_STACK_SIZE
#define LED_TASK_PRIORITY					2
#define USER_KEY_TASK_STACK_SIZE					MIN_STACK_SIZE
#define USER_KEY_TASK_PRIORITY					2
#define LCD_TASK_STACK_SIZE					MIN_STACK_SIZE
#define LCD_TASK_PRIORITY					2
#define SLEEP_TASK_STACK_SIZE					MIN_STACK_SIZE
#define SLEEP_TASK_PRIORITY					0
#define LVGL_TASK_STACK_SIZE					1024
#define LVGL_TASK_PRIORITY					2
#define UI_TASK_STACK_SIZE						512
#define UI_TASK_PRIORITY					2

#define CONSOLE_LOG_LEVEL  LogLevel::DEBUG

#define CONSOLE_SEND_BUFFER_SIZE		1024
#define CONSOLE_RECV_BUFFER_SIZE		2048
#define CONSOLE_MAX_FRAME_SIZE			512
#define CONSOLE_LOG_BUFFER_SIZE			512
#define CONSOLE_RECV_TIMEOUT			100
#define CONSOLE_DMA_RECV_BUFFER_SIZE	200		///<

#define DEFAULT_WAIT_TICKS			pdMS_TO_TICKS(5)
#define LED_TASK_MIN_WAIT_TIME 			5
#endif /* CODE_CONFIG_CONFIG_H_ */
